Routing Tables va Policy Routing
Tarmoqlarda ma'lumotlar paketlari qayerga va qanday yo‘l orqali borishi kerakligini aniqlash routing (yo‘nalish) orqali amalga oshiriladi. Routing — bu marshrutlash, ya'ni paketlar uchun eng to‘g‘ri yo‘lni tanlash jarayoni.
Misol:
Siz 192.168.1.10 IP manzildagi kompyuterdan 8.8.8.8 (Google DNS) serverga ping yuborasiz. Sizning tizimingiz quyidagilarni hal qilishi kerak:
- Paketni qaysi interfeysdan yuborish?
- Qaysi gateway orqali?
- Qaysi yo‘nalishni tanlash?
Nima bu Routing Table?
Routing Table (yo‘nalish jadvali) — bu tizimning IP-paketlar uchun yo‘l xaritasi. Har bir kirish:
- Qaysi tarmoqga
- Qaysi gateway orqali
- Qaysi interfeys orqali borishni ko‘rsatadi.
Jadval Ko‘rinishi (Linux ip route bilan):
$ ip route
default via 192.168.1.1 dev eth0
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.10
| Yo‘nalish | Ma’no |
|---|---|
| default via 192.168.1.1 | Standart gateway (NAT orqali internetga chiqish) |
| 192.168.1.0/24 dev eth0 | Mahalliy tarmoq, bevosita ulanish (directly connected) |
Routing Qo‘shish va O‘chirish
Qo‘shish:
sudo ip route add 10.0.0.0/24 via 192.168.1.254 dev eth0
Bu buyruq:
- 10.0.0.0/24 tarmog‘iga
- 192.168.1.254 gateway orqali
- eth0 interfeysdan yo‘nalish qo‘shadi.
O‘chirish:
sudo ip route del 10.0.0.0/24
Policy Routing (Qoidaga Asoslangan Yo‘nalish)
Oddiy routing nima?
Oddiy routing destination IPga asoslanadi. Ya’ni, paket qayerga ketmoqda — shu asosida yo‘l tanlanadi.
Policy routing nima qiladi?
Policy Routing esa:
- manba IP
- port raqami
- tarmoq interfeysi
- protokol (TCP/UDP)
kabi qo‘shimcha mezonlar asosida yo‘nalishni belgilaydi.
🎯 Ya’ni, siz
qaysi paket qayerdan chiqqaniga qarab hamrouting qoidalari yozishingiz mumkin.
Hayotiy Misol
Sizda quyidagi holat:
| Tarmoq interfeysi | IP manzil | Maqsad |
|---|---|---|
| eth0 | 192.168.1.10 | Mahalliy LAN |
| eth1 | 10.10.10.10 | VPN orqali alohida tarmoqga chiqish kerak |
Siz istaysizki:
192.168.1.10manzildan chiqqan barcha trafik — eth0 orqali10.10.10.10manzildan chiqqan trafik — eth1 orqali (VPN)
Policy Routing Linux’da
1. Yangi routing jadvali yaratish (e.g. table 100)
echo "100 vpnroute" | sudo tee -a /etc/iproute2/rt_tables
2. Yangi marshrut qo‘shish:
sudo ip route add default via 10.10.10.1 dev eth1 table vpnroute
3. Policy qo‘shish: ma'lum IP manzildan chiqqan paketlar ushbu table'dan foydalansin
sudo ip rule add from 10.10.10.10/32 table vpnroute
🔍 Tekshirish:
ip rule show
ip route show table vpnroute
Ko‘p interfeysli tizimda foyda
Policy routing ko‘p interfeysli (multi-homed) tizimlar uchun juda foydali:
- Har bir interfeysga o‘z default gateway berish
- Bitta tizimdan bir nechta yo‘nalishlar bilan trafik chiqarish
- Har xil subnetlarga har xil routing qoidalari qo‘llash
Oddiy Routing vs Policy Routing
| Xususiyat | Oddiy Routing | Policy Routing |
|---|---|---|
| Asosiy mezon | Destination IP | Qoida: source IP, interfeys, port, va h.k. |
| Foydalanish | Oddiy serverlar, oddiy NAT | VPN, ko‘p interfeysli tizimlar, xavfsizlik |
| Moslashuvchanlik | Kam | Yuqori |
Xulosa
- Routing table — tizim paketlar qayerga ketishini belgilaydi
- Policy routing — murakkab holatlarda qo‘shimcha qoidalarga asoslanib yo‘l tanlaydi
- Linux’da
ip route,ip rule,ip tablevositalari orqali boshqariladi